package com.young.ums.service;

import com.young.common.util.Page;
import com.young.ums.model.SsoSession;
import java.util.List;

/**
* 登录认证会话信息服务接口
* Created by imrookie on 2018-9-15.
*/
public interface ISsoSessionService {

    /**
    * 查询
    * @param obj
    * @return
    */
    List<SsoSession> getList(SsoSession obj);

    /**
    * 分页查询
    * @param obj
    * @param page
    * @return
    */
    List<SsoSession> getPage(SsoSession obj, Page page);

    /**
    * 查询单条
    * @param id
    * @return
    */
    SsoSession get(String id);

    /**
     * 查询单条
     * @param token token唯一编号
     * @return
     */
    SsoSession getByToken(String token);

    /**
    * 统计数量
    * @param obj
    * @return Integer 满足xx条件的数据有多少条
    */
    int count(SsoSession obj);

    /**
    * 修改
    * @param obj
    * @return
    */
    int update(SsoSession obj);

    /**
    * 删除
    * @param id
    * @return
    */
    int delete(String id);

    /**
    * 批量删除
    * @param idArr
    * @return
    */
    int delete(String[] idArr);

    /**
    * 插入
    * @param obj
    * @return
    */
    int insert(SsoSession obj);

    /**
    * 批量插入
    * @param list
    * @return
    */
    int batchInsert(List<SsoSession> list);

    /**
     * 下线指定会话
     * @param sessionId
     * @return
     */
    boolean offLine(String sessionId);

    /**
     * 根据token下线
     * @param token 令牌
     * @return
     */
    int offLineByToken(String token);

    /**
     * 上线指定会话
     * @param sessionId
     * @return
     */
    boolean onLine(String sessionId);

}